package com.adcc.loadsheet.billing.vo;

import com.adcc.loadsheet.billing.entity.BillingBillEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 计费账单表实体VO
 * Created by zhaoml on 2020/9/16.
 */
public class BillingBillEntityVO extends BasisVO<BillingBillEntity> {
    private Integer id;   //主键ID
    private Integer contractUserId;   //合同用户ID
    private String billingCycle;  //账单周期
    private String billingFile; //账单明细文档
    private String billingFileName; //账单明细文档名称
    private String billingAmount;   //账单金额
    private String executeFile; //执行账单文档
    private String executeFileName; //执行账单文档名称
    private BigDecimal executeAmount;   //执行金额
    private String remark; //备注
    private Date createAt;  //创建时间
    private String createUser;   //创建人
    private Date updateAt;   //更新时间
    private String updateUser;  //更新人
    //非数据库字段
    private String contractUserAbbrev;  //用户简称
    private int index;
    private String executeAmountStr;     //执行金额，用以页面显示

    @Override
    public BillingBillEntity toEntity() {
        BillingBillEntity billingRuleEntity = new BillingBillEntity();
        billingRuleEntity.setId(this.id);
        billingRuleEntity.setContractUserId(this.contractUserId);
        billingRuleEntity.setBillingCycle(this.billingCycle);
        billingRuleEntity.setBillingFile(this.billingFile);
        billingRuleEntity.setBillingFileName(this.billingFileName);
        billingRuleEntity.setBillingAmount(this.billingAmount);
        billingRuleEntity.setExecuteFile(this.executeFile);
        billingRuleEntity.setExecuteFileName(this.executeFileName);
        billingRuleEntity.setExecuteAmount(this.executeAmount);
        billingRuleEntity.setRemark(this.remark);
        billingRuleEntity.setCreateAt(this.createAt);
        billingRuleEntity.setCreateUser(this.createUser);
        billingRuleEntity.setUpdateAt(this.updateAt);
        billingRuleEntity.setUpdateUser(this.updateUser);
        return billingRuleEntity;
    }

    @Override
    public String toJSON() {
        return null;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getContractUserId() {
        return contractUserId;
    }

    public void setContractUserId(Integer contractUserId) {
        this.contractUserId = contractUserId;
    }

    public String getBillingCycle() {
        return billingCycle;
    }

    public void setBillingCycle(String billingCycle) {
        this.billingCycle = billingCycle;
    }

    public String getBillingFile() {
        return billingFile;
    }

    public void setBillingFile(String billingFile) {
        this.billingFile = billingFile;
    }

    public String getBillingAmount() {
        return billingAmount;
    }

    public void setBillingAmount(String billingAmount) {
        this.billingAmount = billingAmount;
    }

    public String getExecuteFile() {
        return executeFile;
    }

    public void setExecuteFile(String executeFile) {
        this.executeFile = executeFile;
    }

    public BigDecimal getExecuteAmount() {
        return executeAmount;
    }

    public void setExecuteAmount(BigDecimal executeAmount) {
        this.executeAmount = executeAmount;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Date getCreateAt() {
        return createAt;
    }

    public void setCreateAt(Date createAt) {
        this.createAt = createAt;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public Date getUpdateAt() {
        return updateAt;
    }

    public void setUpdateAt(Date updateAt) {
        this.updateAt = updateAt;
    }

    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }

    public String getContractUserAbbrev() {
        return contractUserAbbrev;
    }

    public void setContractUserAbbrev(String contractUserAbbrev) {
        this.contractUserAbbrev = contractUserAbbrev;
    }

    public String getBillingFileName() {
        return billingFileName;
    }

    public void setBillingFileName(String billingFileName) {
        this.billingFileName = billingFileName;
    }

    public String getExecuteFileName() {
        return executeFileName;
    }

    public void setExecuteFileName(String executeFileName) {
        this.executeFileName = executeFileName;
    }

    public int getIndex() {
        return index;
    }

    public void setIndex(int index) {
        this.index = index;
    }

    public String getExecuteAmountStr() {
        return executeAmountStr;
    }

    public void setExecuteAmountStr(String executeAmountStr) {
        this.executeAmountStr = executeAmountStr;
    }
}